package com.zmn.plat.common.dto.product;

import java.io.Serializable;
import java.util.List;

import lombok.Data;

/**
 * @author tanghongjun
 * @version v1.0 @类说明：
 * @since 2018/10/16 11:30
 */
@Data
public class ProductDIO implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 是否需要价格信息：true 需要，null或false不需要
     */
    private Boolean needPriceMsg;

    /**
     * 是否需要图片信息：true 需要，null或false不需要
     */
    private Boolean needPictureMsg;

    /**
     * 是否需要保障信息：true 需要，null或false不需要
     */
    private Boolean needGuaranteeMsg;

    /**
     * 产品ID(如果传入了产品ID，则不会根据服务分类和产品分类去查询，直接根据产品Id或ID集合去查询产品信息)
     */
    private Integer productId;
    private List<Integer> productIdList;

    /**
     * 关键字 产品名称或ID，其中名称模糊匹配，ID精准匹配
     */
    private String keyWord;

    /**
     * 只匹配产品名称
     */
    private String onlyName;

    /**
     * 状态：1.下架，2.上架
     */
    private Integer status;

    /**
     * 产品类型 1后端产品 2前端产品.3计价器产品
     *
     * @author tanbiao
     * @since 2019/9/20
     */
    private Integer showType;

    /**
     * 服务分类ID
     */
    private List<Integer> servCategIds;

    /**
     * 产品1级分类ID
     */
    private List<Integer> categOneIds;

    /**
     * 产品2级分类ID
     */
    private List<Integer> categIds;

    /**
     * 查询后台产品的标志位，分别有一下三种情况 1 渠道产品+通用产品，此时channelId必须为指定的渠道，productType为null 2 通用产品 此时channelId为空（null）productType为1 3
     * 渠道专属产品，此时channelId必须为指定的渠道，productType为2
     */
    private Integer productType;

    /**
     * 1.保外 2.保内 3.全部（保外/保内） 上线之前的兼容，上线之后需要清除
     * 
     * @author tanbiao
     * @since 2019/9/20
     * @see ProductDIO#bizType
     */
    @Deprecated
    private Integer type;

    /**
     * 1.保外 2.保内 3.工程业务
     *
     * @author tanbiao
     * @since 2019/9/20
     */
    private Integer bizType;

    /**
     * 城市ID
     */
    private Integer cityId;

    /**
     * 产品所属的渠道id
     */
    private Integer channelId;

    /**
     * 是否计价器渠道 true,是计价器渠道不过滤试点; false/null 不是默认计价器渠道，需要判断试点配置
     */
    private Boolean isTariffChannel;

    /**
     * 品牌ID
     */
    private Integer brandId;

    /**
     * 是否默认产品：1否 2是
     *
     * @author linfeng
     * @since 2020/10/16 11:44
     */
    private Integer defaultType;

    /**
     * 描述:页码，pageNum*y【首页为1】
     *
     * @since 2018/10/26 20:45
     */
    private Integer pageNum;

    /**
     * 描述:每页数据量，对应 limit x,y中的y
     *
     * @since 2018/10/26 20:45
     */
    private Integer pageSize;

}